package Logica;
import java.io.*; import java.awt.*; import java.awt.event.*; import java.net.*; import Interfaz.*;

public class EnviaCliente implements Runnable {
    private final Cliente main; private ObjectOutputStream salida; private Socket conexion;
    
    public EnviaCliente(Socket conexion, final Cliente main, final PanelJuegoLAN panel) {
        this.conexion = conexion; this.main = main;
        main.jugar.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent event) {
                if(main.jugar == event.getSource()){
                	main.addKeyListener(new KeyListener() {
						@Override
						public void keyTyped(KeyEvent arg0) {};
						@Override
						public void keyReleased(KeyEvent arg0) {};
						@Override
						public void keyPressed(KeyEvent arg0) {
							int KeyCode = arg0.getKeyCode();
							if (KeyCode == KeyEvent.VK_LEFT && panel.getPosXRaquetaJugador() > 5) {
								int posxJugador = panel.getPosXRaquetaJugador() -15;
								panel.setPosXRaquetaJugador(posxJugador);
								enviarDatos(posxJugador+"");
							}
							if (KeyCode == KeyEvent.VK_RIGHT && panel.getPosXRaquetaJugador() < 475) {
								int posxJugador = panel.getPosXRaquetaJugador() + 15;
								panel.setPosXRaquetaJugador(posxJugador);
								enviarDatos(posxJugador-30+"");
					}}});
                	main.add(panel); main.validate();
                }}});
    }

    public void pintarJuegoLAN() {
		PanelJuegoLAN panel = new PanelJuegoLAN(-1);
		main.add(panel,BorderLayout.CENTER); main.validate();
	}

    private void enviarDatos(String mensaje) {
        try {
            salida.writeObject(mensaje); salida.flush(); 
        } catch (IOException ioException) {}; 
    }
        public void run() {
        try {
            salida = new ObjectOutputStream(conexion.getOutputStream()); salida.flush();
        } catch (IOException ex) {};
    }
}